package com.plm.k8s.myk8sapi.cmd;

import com.plm.k8s.myk8sapi.pojo.entity.ns.NamespaceEntity;

import java.util.List;
import java.util.Map;

/**
 * 命名空间相关的命令
 * @author 潘磊明
 * 版本号：1.0
 * 创建日期：2021/7/14 18:58
 */
public interface INamespaceCmd {

    /**
     * 列出命名空间
     * @return
     */
    List<NamespaceEntity> listNamespace();

    /**
     * 列出命名空间
     * @param nameFilter
     * @param labelFilter
     * @return
     */
    List<NamespaceEntity> listNamespace(String nameFilter, Map<String, String> labelFilter);

    /**
     * 创建命名空间
     * @param namespace
     * @return
     * @throws Exception
     */
    boolean createNamespace(String namespace) throws Exception;

    /**
     * 删除命名空间
     * @param namespace
     * @return
     * @throws Exception
     */
    boolean deleteNamespace(String namespace) throws Exception;
}
